const tools = require('../utils/tools')
/**
 * 检查用户状态
 */
const checkUserStat = async (ctx, next) => {
  if (!ctx.header['token']) {
    ctx.body = tools.resError('未传入有效的 token', 10001)
    return
  }
  const token = tools.getToken(ctx)
  // 验证 token 结果
  const result = tools.jwt.jwtVerify(token)
  if (result) {
    switch (result.code) {
      case 401:
        ctx.body = tools.resError('登录状态已过期，请重新登录', 10002)
        break
      case 400:
        ctx.body = tools.resError('token 错误', 10003)
        break
      case 0:
        next()
        break
      default:
        ctx.body = tools.resError('token 错误', 10004)
    }
  }
}

module.exports = checkUserStat
